package com.legal.aid.app.mapper;

import com.legal.aid.app.domain.vo.ChatMessage;
import com.legal.aid.app.domain.vo.ChatListVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;

import java.util.List;

@Mapper
public interface ChatMessageMapper {
    // 保存消息
    int insert(ChatMessage message);

    // 获取聊天历史记录
    List<ChatMessage> getChatHistory(@Param("userId") String userId,
            @Param("lawyerId") String lawyerId,
            @Param("pageSize") Integer pageSize,
            @Param("offset") Integer offset);

    // 获取对话列表
    List<ChatListVO> getChatList(@Param("userId") String userId);

    // 更新消息状态为已读
    void updateMessagesToRead(@Param("senderId") Long senderId, @Param("receiverId") Long receiverId);
//    int updateStatus(@Param("messageId") Long messageId, @Param("status") String status);
//
//    // 获取未读消息数
//    int getUnreadCount(@Param("userId") Long userId);

    // ChatMessageMapper.java
    int deleteMessageById(Long id);
//    int updateStatus(@Param("messageId") Long messageId, @Param("status") String status);
//
//    // 获取未读消息数
//    int getUnreadCount(@Param("userId") Long userId);

    ChatMessage selectById(@Param("messageId") Long messageId);
}